package br.mg.bhe.ftpobre.util;

import org.apache.commons.net.ftp.FTPFile;

import br.mg.bhe.ftpobre.fs.RemoteFile;
import br.mg.bhe.ftpobre.gui.MainFrame;

/**
 * 
 * @author Aureliano
 */
public final class RemoteFileUtil {

	private RemoteFileUtil() {
		super();
	}
	
	public static RemoteFile getSelectedFile() {
		int row = MainFrame.getInstance().getTableRemoteFiles().getSelectedRow();
        if (row == -1) {
        	return null;
        }
        
        return (RemoteFile) MainFrame.getInstance()
        		.getTableRemoteFiles().getModel().getValueAt(row, 1);
	}
	
	public static String getFileType(int type) {
		switch (type)
        {
        case FTPFile.FILE_TYPE 			:
        	return "Arquivo";
        case FTPFile.DIRECTORY_TYPE 	:
        	return "Pasta";
        case FTPFile.SYMBOLIC_LINK_TYPE :
        	return "Link simbólico";
        case FTPFile.UNKNOWN_TYPE 		:
        	return "Desconhecido";
        default 						:
        	throw new IllegalArgumentException(
        			"Tipo de arquivo inexistente. O valor " + type +
        			" não está entre as constantes de FTPFile.");
        }
	}
}